import {reqGetSearchInfo} from "@/api"
//search模块的小仓库
const state = {
    searchList:{}
}
const actions = {
    // 获取search模板的数据
    // 对params形参设置了默认值
    async getSearchList(context,params={}){
        // params形参，是当用户派发action的时候，第二个参数传递过来的,且这个参数至少为一个空对象
        let searchList = await reqGetSearchInfo(params)
        if(searchList.code === 200){
            context.commit("GETSEARCHLIST", searchList.data)
        }
    }
}
const mutations = {
    GETSEARCHLIST(state, searchList){
        state.searchList = searchList
    }
}
// 在项目中该属性是为了简化数据而生的
const getters = {
    // 当前形参state,为当前仓库中的state
    goodsList(state){
        if(state.searchList != {}){
            return state.searchList.goodsList
        }else{
            return []
        }
    },
    trademarkList(state){
        // 此处需要考虑没有网络的时候，可能会出现报错的情况，所以至少需要返回一个空数组，以防万一
        return state.searchList.trademarkList || []
    },
    attrsList(state){
        return state.searchList.attrsList || []
    }
}

export default {
    state,
    actions,
    mutations,
    getters
}